﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Data;
using eepg_contratos.Models;
using eepg_contratos.Utilities;
using System.IO;
using System.Collections;
using System.Xml.Serialization;

namespace eepg_contratos.WebServices
{

    //WebMethod(Description:=" this is just the beginning of the jocke:-)"), XmlInclude(GetType(MyClass1)),
//XmlInclude(GetType(MyClass2)).­..., XmlInclude(GetType(MyClassN))> _
    /// <summary>
    /// Summary description for wsgeneral
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class wsgeneral : System.Web.Services.WebService
    {

		[WebMethod]
        [XmlInclude(typeof(String))]
        public String ListarPersonal(String filtro)
        {
            AppUtil u = new AppUtil();
            String lista = "";
            General g = new General();
            ArrayList arr = new ArrayList();
            arr = g.ListarPersonal(filtro);
            lista = u.ArrayToHtml(arr, "csv");
            
            return lista;
        }

        [WebMethod]
        [XmlInclude(typeof(String))]
        public String ListarSolicitudes(String filtro)
        {
            AppUtil u = new AppUtil();
            String lista = "";
            General g = new General();
            ArrayList arr = new ArrayList();
            arr = g.ListarSolicitudes(filtro);
            lista = u.ArrayToHtml(arr, "csv");

            return lista;
        }

        [WebMethod]
        public String ListarPersonalDt(String filtro)
        {
            General g = new General();
            return g.ListarPersonalDt(filtro);
        }

        [WebMethod]
        public String PROC_LISTAR_CONTRATOS_SUSCR(String finicio, String ffin, String proveedor)
        {
            Reportes g = new Reportes();
            return g.PROC_LISTAR_CONTRATOS_SUSCR(finicio, ffin, proveedor);
        }

        [WebMethod]
        public String PROC_LISTAR_REFRIG_SUSTITUIDAS(String finicio, String ffin, String marca, String filtroPor)
        {
            Reportes g = new Reportes();
            return g.PROC_LISTAR_REFRIG_SUSTITUIDAS(finicio, ffin, marca, filtroPor);
        }

        [WebMethod]
        public String PROC_OBTENER_CARTERA_RENOVA(String secuencia, String tipoTarifa, String plazo)
        {
            Reportes g = new Reportes();
            return g.PROC_OBTENER_CARTERA_RENOVA(secuencia, tipoTarifa, plazo);
        }

        [WebMethod]
        public String PROC_OBTENER_CARTERA_RENOVA_DET(String secuencia, String tipoTarifa, String plazo, String anio)
        {
            Reportes g = new Reportes();
            return g.PROC_OBTENER_CARTERA_RENOVA_DET(secuencia, tipoTarifa, plazo, anio);
        }

        [WebMethod]
        public String PROC_RECAREME(String finicio, String ffin)
        {
            Reportes g = new Reportes();
            return g.PROC_RECAREME(finicio, ffin);
        }

        [WebMethod]
        public String PROC_RECARENO(String finicio, String ffin)
        {
            Reportes g = new Reportes();
            return g.PROC_RECARENO(finicio, ffin);
        }

        [WebMethod]
        public String PROC_PROCESOS_CARTERA_VENCIDA()
        {
            Reportes g = new Reportes();
            return g.PROC_PROCESOS_CARTERA_VENCIDA();
        }

        [WebMethod]
        public String PROC_USUARIOS_RENOVA()
        {
            Reportes g = new Reportes();
            return g.PROC_USUARIOS_RENOVA();
        }

        [WebMethod]
        public String PROC_USUARIOS_INTRANET()
        {
            Reportes g = new Reportes();
            return g.PROC_USUARIOS_INTRANET();
        }

        [WebMethod]
        public String PROC_USUARIOS_CGWEB()
        {
            Reportes g = new Reportes();
            return g.PROC_USUARIOS_CGWEB();
        }
    }
}
